A Question Answering (QA) system is a computer system that utilizes natural language processing (NLP) to answer questions posed in a natural language. A QA implementation, usually a computer program, may construct its answers by querying a structured database of knowledge or information, usually a knowledge base, or “corpus.” QA systems can retrieve, or ingest, information from an unstructured collection of natural language documents. Some examples of natural language document collections used for QA systems include a local collection of reference texts, an internal organization documents and web pages, a compiled newswire reports, and a set of online web pages.
QA research attempts to deal with a wide range of question types including: fact, list, definition, how, why, hypothetical, semantically constrained, and cross-lingual questions. Closed-domain question answering deals with questions under a specific domain (for example, medicine or automotive maintenance), and can be seen as an easier task because NLP systems can exploit domain-specific knowledge frequently formalized in ontologies. Alternatively, closed-domain might refer to a situation where only a limited type of questions are accepted, such as questions asking for descriptive rather than procedural information. On the other hand, open-domain question answering deals with questions about nearly anything, and can only rely on general ontologies and world knowledge. On the other hand, these systems usually have much more data available from which to extract the answer. A challenge facing researchers is how to test newly created or modified QA systems with the testing including not only whether the QA system answered a question correctly, but also whether the candidate answers the QA system was considering, while not correct answers, were reasonable candidates.